A significant challenge in the modern data center is to ensure that enough computer resources are available to each application in the data center when there is a sudden peak in demand for the application. One approach that has been used is to combine multiple computer servers into a cluster. This approach is illustrated in FIG. 1. Each node 124, 126, 128 of cluster 120 appears to clients 102, 104, 106 as a single system. Similarly, each node 134, 136, 138 of cluster 130 appears to the clients 102, 104, 106 as a second single system.
Transactions for an application 140 running on nodes 124, 126, 128 of cluster 120 may be routed to one of the nodes of cluster 120 using load balancer 122. Transactions for a second application 150 running on nodes 134, 136, 138 of cluster 130 may be routed to one of the nodes of cluster 130 using load balancer 132.
Load balancers 122, 132 may be implemented in hardware or software, and may reside on one of the nodes of their respective clusters 120, 130 or may be a separate appliance. Each load balancer 122, 132 may route transactions to a particular node using a round-robin approach. Alternately, load balancers 122, 132 may select a particular node by monitoring loads or service levels of the nodes and selecting the node best able to handle the transaction.